﻿"""
Online_Judge URL Configuration

The `urlpatterns` list routes URLs to views. For more information please see:
    https://docs.djangoproject.com/en/3.0/topics/http/urls/
Examples:
Function views
    1. Add an import:  from my_app import views
    2. Add a URL to urlpatterns:  path('', views.home, name='home')
Class-based views
    1. Add an import:  from other_app.views import Home
    2. Add a URL to urlpatterns:  path('', Home.as_view(), name='home')
Including another URLconf
    1. Import the include() function: from django.urls import include, path
    2. Add a URL to urlpatterns:  path('blog/', include('blog.urls'))
"""

#这边开路由
from django.contrib import admin
#from django.urls import path
from django.conf.urls import url,include
from django.views.static import serve

from OnlineJudge import views
from OnlineJudge import courseViews
from OnlineJudge.utils import PublicMethods as pub
urlpatterns = (
    url('^admin/', admin.site.urls),
    url('^register/',views.register),
    url('^check_email/', views.check_email),
    url('get_capture/',views.capture_two),
    url('index',views.index),    #首页显示前十竞赛信息
    url('userRank/',views.userRank),  #排名
    url(r'^$',views.index),      #输入ip就返回首页数据
    url('status/',views.status), #状态栏
    url('samecode/',views.samecode),
    url('login/',views.login),
    url('problemList/',views.problemList),  #按题目编号，难度，正确数，提交数排序,搜索
    url('problem/',views.problem),  #问题详情
    url('titleSolution/',views.titleSolution),  #题解
    url('problemSolving/',views.problemSolving),  #我要写题解
    url('submissionState/',views.submissionState),  #提交状态
    url('contest/',views.contest),  #作业和竞赛
    url('contestProblemList/',views.contestProblemList),  #竞赛题目页面
    url('contestRankList/',views.contestRankList),  #竞赛排名
    url('contestRankList_oi/',views.contestRankList_oi),  #oi竞赛排名
    url('contestStatus/',views.contestStatus),  #竞赛状态
    url('contestStatistics/',views.contestStatistics),  #竞赛统计
    url('sendMail/', views.sendMail),  # 发送站内信
    url('getMail/', views.getMail),  # 取出站内信
    url('getMyMailList/', views.getMyMailList),  # 站内信已读列表
    url('getAllMailList/',views.getAllMailList),  #收到的所有站内信
    url('mailRead/', views.mailRead),  # 站内信已读
    url('deleteMail/',views.deleteMail),  #删除站内信
    url('deleteMySendMail/',views.deleteMySendMail),#删除自己发送的站内信
    url('mySendMail/',views.mySendMail),#自己发送的邮件
    url('sendEmail/',views.sendEmail),  #发送邮箱验证码
    url('userStatus/',views.userStatus),  #我的状态
    url('myCollection/',views.myCollection),  #我的收藏
    url('storeCode/', views.storeCode),  # 储存用户提交时的代码
    url('takeoutCode/', views.takeoutCode),  # 代码详情页
    url('reInfo/', views.reInfo),  # 显示代码
    url('takeoutLevelinfo/', views.takeoutLevelinfo),  # 开放课程演练——取关卡大类，关卡列表，关卡信息,课程进度,先决条件
    url('takeoutLevelpro/', views.takeoutLevelpro),  # 开放课程演练——取关卡题目列表信息,题目信息,先决关卡
    url('addNews/',views.addNews),  #添加新闻
    url('editNews/',views.editNews),  #修改新闻
    url('getUsersInfo/',views.getUsersInfo),  #获取用户信息
    url('deleteNews/',views.deleteNews),  #删除新闻
    url('usersList/',views.usersList),  #用户列表
    url('deleteUsers/',views.deleteUsers),  #列表用户
    url('resetPwd/',views.resetPwd),  #修改密码
    url('changeUserStatus/',views.changeUserStatus),  #更改用户状态
    url('statusSubmit/',views.statusSubmit),  #题目提交状态
    url('setPersonalInfo/',views.setPersonalInfo),  #修改昵称、学校、性别信息页面
    url('setRealName/',views.setRealName),  #设置真实姓名
    url('judgeRealName/', views.judgeRealName),  # 判断用户是否填写真实姓名
    url('addordelCollection/', views.addordelCollection),  # 添加或取消收藏
    url('myProblemSolution/', views.myProblemSolution),  # 我的题解
    url('setIp/',views.setIp),  #插入限制的用户ip和时间
    url('findIp/',views.findIp),  #查找该用户是否被限制
    url('verifyIdentiy/',views.verifyIdentiy),  #获取管理员身份
    url('userInfo/',views.userInfo),  #获取用户昵称，学校，性别
    url('findPass/', views.findPass),  #忘记密码修改密码
    url('emailChangePass/', views.emailChangePass),  #验证邮箱验证码 并修改密码
    url('levelKind/', views.levelKind),  #管理员关卡大类
    url('levels/', views.levels),  #管理员关卡列表
    url('praise/', views.praise),  #给题解点赞方法
    url('addReply/', views.addReply),  #添加留言
    url('signup/',views.signup),  #个人赛报名
    url('news/',views.news),  #新闻内容
    url('NewsRotations/',views.NewsRotations),#新闻轮播图
    url('groupSignUp/', views.groupSignUp),  # 团队赛报名
    url('addLevel/', views.addLevel),  #管理员添加/修改关卡
    url('checkReply/', views.checkReply),  #审核题解回复页面
    url('passReply/', views.passReply),  #题解留言通过
    url('deleteReply/', views.deleteReply),  #删除题解留言
    url('levelAccept/', views.levelAccept),  #管理员通关情况
    url('adminNewList/', views.adminNewList),  # 管理员新闻列表
    url('addProblem/', views.addProblem),  # 管理员添加问题
    url('adminResetPwd/', views.adminResetPwd),  # 管理员修改密码
    url('privilegeList/', views.privilegeList),  # 管理员权限列表
    url('deletePrivilage/', views.deletePrivilage),  #删除权限
    url('modifyPrivilage/', views.modifyPrivilage),  #权限修改
    url('classManage/', views.classManage),  #班级管理
    url('editClass/', views.editClass),  #班级修改
    url('classDelete/', views.classDelete),  #班级删除
    url('adminProblemList/', views.adminProblemList),  # 管理员问题列表
    url('testData/', views.testData),  # 管理员问题列表——测试用例操作
    url('addTestData/', views.addTestData),  # 管理员问题列表——添加测试用例
    url('addClass/', views.addClass),  #添加班级
    url('setLoginIp/', views.setLoginIp),  #管理员限制登录ip
    url('contestList/', views.contestList),  # 管理员竞赛界面
    url('modifyContestStatus',views.modifyContestStatus) ,  #修改竞赛状态
    url('changeContestType', views.changeContestType),  # 修改竞赛类型
    url('problemChangeId',views.problemChangeId) ,  #管理员更改问题Id
    url('addContest',views.addContest),  #添加竞赛
    url('accountGenerator',views.accountGenerator),  #比赛账号生成器
    url('addPrivilege', views.addPrivilege),  # 添加权限
    url('problemSolutionList',views.problemSolutionList),  #管理员题解列表
    url('modifySolutionList', views.modifySolutionList),  # 修改题解状态
    url('importProblemE',views.importProblemE) ,  #管理员导入问题excel
    url('importProblemX',views.importProblemX) ,  #管理员导入问题xml
    url('exportProblemE',views.exportProblemE) ,  #管理员导出问题excel
    url('signUpManage',views.signUpManage) ,  #报名管理
    url('modifySignUpManage',views.modifySignUpManage) ,  #修改报名管理
    url('deleteSignUpManage',views.deleteSignUpManage) ,  #删除报名管理
    url('storeSolution',views.storeSolution) ,  #题目提交功能
    url('changeContest',views.changeContest) ,  #管理员修改竞赛
    url('deleteContest', views.deleteContest),  # 管理员删除竞赛
    url('rejudgeProblem/',views.rejudgeProblem),  #重判题目
    url('getNewIp/',views.getNewIp),  #获得当前ip
    url('contestLogs/', views.contestLogs),  # 下载日志
    url('contestSuspect/', views.contestSuspect),  # 防作弊接口
    url('get_BalloonList/',views.get_BalloonList),  #获取该竞赛气球名单
    url('print_BalloonList/',views.print_BalloonList),  #打印未发送气球名单
    url('send_Balloon/',views.send_Balloon),#发送某一气球
    url('exportContestProblem/',views.exportContestProblem),#导出竞赛题目
    url('getProblemSolution/',views.getProblemSolution),#导返回题解内容
    url('receiveImage/',views.receiveImage),#接收新闻图片
    url('receiveImageOfProblem/',views.receiveImageOfProblem),#接收问题图片
    url('course/',courseViews.courseIndex),#接收问题图片
    url('courseSearch/',courseViews.courseSearch),#按课程模糊查询
    url('addCurriculum/',courseViews.addCurriculum),#添加课程
    url('getpersonData/',courseViews.getpersonData),#获取个人信息
    url('showCourses/',courseViews.showCourses),#展示更多课程
    url('myCourse/',courseViews.myCourse),#我的正在进行的课程
    url('myClosingsession/',courseViews.myClosingsession),#我的已结束课程
    url('courseMedia/courseCover(?P<path>.*)$', serve, {'document_root': r'/home/jhcoj/course_data/course_cover'}),#课程封面访问路径
    url('courseMedia/userCover(?P<path>.*)$', serve, {'document_root': r'/home/jhcoj/course_data/users'}),#用户头像访问路径
    url('checktowpassword/',views.checktowPassword)

)
